package com.tripleying.dogend.dnfipm.model;

import javafx.geometry.Pos;
import javafx.scene.layout.HBox;

/**
 * 用于列表中的补丁块
 * @author Dogend
 */
public class NPKCell extends HBox {
    
    /**
     * 补丁类
     */
    private final NPKItem npk;
    private final String upper;
    
    public NPKCell(NPKItem npk){
        super(npk.getSwitchButton(), npk.getAddPreviewButton(), npk.getPreviewButton(), npk.getEditButton(), npk.getDeleteButton());
        this.setAlignment(Pos.CENTER);
        this.setSpacing(10);
        this.npk = npk;
        this.upper = npk.getName().toUpperCase();
    }
    
    /**
     * 启用补丁
     */
    public void enableNPK(){
        npk.enableNPK();
    }
    
    /**
     * 禁用补丁
     */
    public void disableNPK(){
        npk.disableNPK();
    }
    
    /**
     * 获取补丁状态（启用/禁用）
     * @return 
     */
    public boolean getSwitchStatus(){
        return npk.getSwitchButton().isSelected();
    }
    
    /**
     * 获取补丁真实状态（先更新状态后获取）
     * @return 
     */
    public boolean getTruthStatus(){
        npk.updateStatus();
        return getSwitchStatus();
    }
    
    public NPKItem getNPKItem(){
        return npk;
    }
    
    public String getUpperName(){
        return upper;
    }
    
}
